// ============================== 导入依赖 ============================== //

import CORE from '@/CORE'
import ListClass from '@api/base/model/AlarmQueryReq'
import BaseClass from '@api/base/model/MessageAlarmDto'
import API from './API'

// ============================== 导出状态集 ============================== //

export default {
  // —————————————————————————————— 常量状态 —————————————————————————————— //

  /**
   * 接口
   */
  API,

  /**
   * 映射
   */
  MAP: {
    WORD: CORE.MAP.ALARM, // 词语
    COUNT: {}, // 状态计数
  },

  /**
   * 字典
   */
  DICT: {
    /**
     * 处理
     */
    DEAL: (CORE.DICT.ALARM_DEAL_TYPE || []).slice(1),
  },

  /**
   * 初始参数
   *
   * 1. 初始存在，才能响应
   * 2. CORE.mixStore(store) 时使用
   * 3. setParam() 重置时使用
   * 4. WebSearch 高级查询点重置时使用
   */
  INIT_PARAM: CORE.initObj(ListClass, BaseClass, {
    alarmResolveState: 1, // 告警解决状态： 1-未处理，2-已处理
    alarmLevelId: (CORE.DICT.ALARM_LEVEL || []).map(([id]) => id).join(), // 告警等级
    alarmTreeId: undefined, // 选择告警的结构树 ID
  }),

  /**
   * 初始单项
   *
   * 1. 初始存在，才能响应
   * 2. setOne() 合并时使用
   * 3. openAdd() 新增时使用
   */
  INIT_ONE: CORE.initObj(BaseClass, {
    //
  }),
}
